//package com.example.testi18n.job;
//
//import org.springframework.context.annotation.Configuration;
//import org.springframework.scheduling.annotation.EnableScheduling;
//import org.springframework.scheduling.annotation.SchedulingConfigurer;
//import org.springframework.scheduling.config.ScheduledTaskRegistrar;
//import org.springframework.scheduling.support.CronTrigger;
//
//import javax.annotation.Resource;
///**
// * 基于接口SchedulingConfigurer的动态定时任务
// */
//@Configuration
//@EnableScheduling
//public abstract class TaskSchedulingConfigurer extends TaskSchedulingParam implements SchedulingConfigurer {
//
//    @Resource
//    private TaskSchedulingThreadFactory taskSchedulerThreadFactory;
//
//    // 定时任务周期表达式
//    private String cron;
//
//
//    /**
//     * 重写配置定时任务的方法
//     */
//    @Override
//    public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
//        scheduledTaskRegistrar.setScheduler(taskSchedulerThreadFactory.taskScheduler());
//        scheduledTaskRegistrar.addTriggerTask(
//                // 执行定时任务
//                this::taskService,
//                // 设置触发器
//                triggerContext -> {
//                    // 获取定时任务周期表达式
//                    cron = getCron();
//                    CronTrigger trigger = new CronTrigger(cron);
//                    return trigger.nextExecutionTime(triggerContext);
//                }
//        );
//    }
//
//}